package com.iris.live.services.data.models;

import javax.persistence.*;
import java.io.Serializable;
import java.sql.Date;

/**
 * Created by DF on 6/27/2017
 */
@SuppressWarnings("JpaDataSourceORMInspection")
@Entity
@Table(name = "pushapprovalitemsetting", schema = "live", catalog = "")
public class PushApprovalItemSettingModel implements Serializable {
    private Integer id;
    private String permit;
    private Integer type;
    private String brand;
    private String step1;
    private String step2;
    private String step3;
    private String step4;
    private String step5;
    private String step6;
    private String step7;
    private String step8;
    private String step9;
    private Date createDate;
    private Date modifydate;
    private String remark;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    @Basic
    @Column(name = "permit")
    public String getPermit() {
        return permit;
    }

    public void setPermit(String permit) {
        this.permit = permit;
    }

    @Basic
    @Column(name = "type")
    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    @Basic
    @Column(name = "brand")
    public String getBrand() {
        return brand;
    }

    public void setBrand(String brand) {
        this.brand = brand;
    }

    @Basic
    @Column(name = "step1")
    public String getStep1() {
        return step1;
    }

    public void setStep1(String step1) {
        this.step1 = step1;
    }

    @Basic
    @Column(name = "step2")
    public String getStep2() {
        return step2;
    }

    public void setStep2(String step2) {
        this.step2 = step2;
    }

    @Basic
    @Column(name = "step3")
    public String getStep3() {
        return step3;
    }

    public void setStep3(String step3) {
        this.step3 = step3;
    }

    @Basic
    @Column(name = "step4")
    public String getStep4() {
        return step4;
    }

    public void setStep4(String step4) {
        this.step4 = step4;
    }

    @Basic
    @Column(name = "step5")
    public String getStep5() {
        return step5;
    }

    public void setStep5(String step5) {
        this.step5 = step5;
    }

    @Basic
    @Column(name = "step6")
    public String getStep6() {
        return step6;
    }

    public void setStep6(String step6) {
        this.step6 = step6;
    }

    @Basic
    @Column(name = "step7")
    public String getStep7() {
        return step7;
    }

    public void setStep7(String step7) {
        this.step7 = step7;
    }

    @Basic
    @Column(name = "step8")
    public String getStep8() {
        return step8;
    }

    public void setStep8(String step8) {
        this.step8 = step8;
    }

    @Basic
    @Column(name = "step9")
    public String getStep9() {
        return step9;
    }

    public void setStep9(String step9) {
        this.step9 = step9;
    }

    @Basic
    @Column(name = "createDate")
    public Date getCreateDate() {
        return createDate;
    }

    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    @Basic
    @Column(name = "modifydate")
    public Date getModifydate() {
        return modifydate;
    }

    public void setModifydate(Date modifydate) {
        this.modifydate = modifydate;
    }

    @Basic
    @Column(name = "remark")
    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        PushApprovalItemSettingModel that = (PushApprovalItemSettingModel) o;

        if (id != null ? !id.equals(that.id) : that.id != null) return false;
        if (permit != null ? !permit.equals(that.permit) : that.permit != null) return false;
        if (type != null ? !type.equals(that.type) : that.type != null) return false;
        if (brand != null ? !brand.equals(that.brand) : that.brand != null) return false;
        if (step1 != null ? !step1.equals(that.step1) : that.step1 != null) return false;
        if (step2 != null ? !step2.equals(that.step2) : that.step2 != null) return false;
        if (step3 != null ? !step3.equals(that.step3) : that.step3 != null) return false;
        if (step4 != null ? !step4.equals(that.step4) : that.step4 != null) return false;
        if (step5 != null ? !step5.equals(that.step5) : that.step5 != null) return false;
        if (step6 != null ? !step6.equals(that.step6) : that.step6 != null) return false;
        if (step7 != null ? !step7.equals(that.step7) : that.step7 != null) return false;
        if (step8 != null ? !step8.equals(that.step8) : that.step8 != null) return false;
        if (step9 != null ? !step9.equals(that.step9) : that.step9 != null) return false;
        if (createDate != null ? !createDate.equals(that.createDate) : that.createDate != null) return false;
        if (modifydate != null ? !modifydate.equals(that.modifydate) : that.modifydate != null) return false;
        if (remark != null ? !remark.equals(that.remark) : that.remark != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = id != null ? id.hashCode() : 0;
        result = 31 * result + (permit != null ? permit.hashCode() : 0);
        result = 31 * result + (type != null ? type.hashCode() : 0);
        result = 31 * result + (brand != null ? brand.hashCode() : 0);
        result = 31 * result + (step1 != null ? step1.hashCode() : 0);
        result = 31 * result + (step2 != null ? step2.hashCode() : 0);
        result = 31 * result + (step3 != null ? step3.hashCode() : 0);
        result = 31 * result + (step4 != null ? step4.hashCode() : 0);
        result = 31 * result + (step5 != null ? step5.hashCode() : 0);
        result = 31 * result + (step6 != null ? step6.hashCode() : 0);
        result = 31 * result + (step7 != null ? step7.hashCode() : 0);
        result = 31 * result + (step8 != null ? step8.hashCode() : 0);
        result = 31 * result + (step9 != null ? step9.hashCode() : 0);
        result = 31 * result + (createDate != null ? createDate.hashCode() : 0);
        result = 31 * result + (modifydate != null ? modifydate.hashCode() : 0);
        result = 31 * result + (remark != null ? remark.hashCode() : 0);
        return result;
    }
}
